package com.tom.abstractcode.test01;

/**
 * 基础服务对象
 *
 * @author zx
 * @date 2024年12月20日 8:59
 */
public abstract class BaseService<T, R> {

    public final R service(T request) {
        System.out.println("调用公共的service");
        validateRequest(request);
        // 各个子类实现，具体业务逻辑, 此处省略getBiz获取各个子类实际业务逻辑类
        System.out.println("结束调用公共的service");
        return null;
    }

    protected abstract void validateRequest(T request);
}
